261 字
1 分钟
【Hugo】代码高亮主题自定义
2025-08-11

今天魔改 hugo-stack 的时候,感觉原来那个蓝蓝的配色实在是有点丑,既然这次已经大型魔改了,就一起改了吧,过程中遇到了点小困难。

根据网上查到方法大都是直接在 hugo.yaml 里面改 markup.highlight.style,但是我不知道是不是因为我配置的问题改了没用,所以又查了很久的资料,终于是解决了,特此记录。

用 chromastyles 生成 scss 文件到 assets/scss/partials/highlight,我选了 xcode 主题,其他可选的主题见 Chroma Style Gallery

hugo gen chromastyles --style=xcode > assets/scss/partials/highlight/light.scss
hugo gen chromastyles --style=xcode-dark > assets/scss/partials/highlight/dark.scss

这样刷新一下就可以看到效果了,不过这样会衍生出来两个新问题。

  1. 背景颜色不统一的问题,打开生成的 scss,找到 prewrapper 这一行改一下即可

    /* PreWrapper */ .chroma { background-color:#fafafa; }
  2. 代码又不能横向滚动了,于是我把原来那份 css 的滚动逻辑复制进来了

    /* LineTableTD */
    .chroma .lntd {
    vertical-align: top;
    padding: 0;
    margin: 0;
    border: 0;
    }
    /* LineTable */
    .chroma .lntable {
    border-spacing: 0;
    padding: 0;
    margin: 0;
    border: 0;
    width: 100%;
    display: block;
    > tbody {
    display: block;
    width: 100%;
    > tr {
    display: flex;
    width: 100%;
    > td:last-child {
    overflow-x: auto;
    }
    }
    }
    }

另外行内代码也很丑,颜色在 assets/variables.scss 里面的这两行,顺手也改了

--code-background-color: rgb(246, 248, 250);
--code-text-color: #202328;
分享

如果这篇文章对你有帮助,欢迎分享给更多人!

【Hugo】代码高亮主题自定义
https://starlab.top/posts/Hugo Code Highlighting/
作者
Star
发布于
2025-08-11
许可协议
CC BY-NC-SA 4.0

部分信息可能已经过时

目录